#pragma once

#include <typedef.h>
//
#include <battery.hpp>
#include <emath.hpp>
#include <quaternion.hpp>
#include <task_run.hpp>
#include <uorb_pub.hpp>
#include <work_queue.hpp>
//
#include <msg_power_s.hpp>

class Power : public WorkQueue
{
public:
	Power();
	virtual ~Power();
	static Power* Instance();

protected:
	virtual void RunImpl(void* arg);

private:
	Battery m_Battery;
	UorbPub m_Pub;
	msg_power_s m_Power;
};